详解pandas.DataFrame.drop()(删除行或列)函数使用方法

您所在的位置:网站首页 python dataframe删除nan 详解pandas.DataFrame.drop()(删除行或列)函数使用方法

详解pandas.DataFrame.drop()(删除行或列)函数使用方法

2024-06-13 12:36| 来源: 网络整理| 查看: 265

pandas.DataFrame.drop函数是一种用于从数据框中删除给定坐标轴上的行或列的方法。它可以用于删除指定标签的行或列,并返回新的数据框。

语法格式

在Python中,可以使用以下语法来使用DataFrame.drop()函数:

DataFrame.drop(labels=None, axis=0, index=None, columns=None, level=None, inplace=False, errors='raise')

在上面的代码中,参数含义如下:

labels:删除的标签。 axis:用于确定要删除的是行还是列,0表示行,1表示列。 index:删除的行索引。 columns:删除的列索引。 level:只适用于具有多层索引的数据帧,指定要删除的级别。 inplace:指定是否在原始数据帧中进行删除操作。默认值为False。 errors:指定如何处理无效标签。如果它们是raise,则引发异常。否则,可以将它们忽略或打印警告信息。 样例

以下是两个 Python 代码示例,说明如何使用 DataFrame.drop函数的不同方式:

示例1:删除行和列

在下面的示例中,将从数据框中删除指定的行和列。原始数据框是:

import pandas as pd data = {'name': ['John', 'Marry', 'Peter', 'David'], 'age': [22, 31, 36, 28], 'gender': ['Male', 'Female', 'Male', 'Male'], 'Marks': [84, 61, 35, 77]} df = pd.DataFrame(data) print(df)

原始数据帧如下所示:

name age gender Marks 0 John 22 Male 84 1 Marry 31 Female 61 2 Peter 36 Male 35 3 David 28 Male 77

然后使用上面提到的pandas.DataFrame.drop()方法来删除数据帧中的行和列如下:

df = df.drop([0,3],axis=0) df = df.drop(['age'],axis=1) print(df)

输出结果如下所示:

name gender Marks 1 Marry Female 61 2 Peter Male 35

在上面的代码中,我们使用了DataFrame.drop函数来删除索引0、3和列索引“age”。

示例2:原地修改和制定级别

在这个示例中,我们将使用inplace参数来原地更改数据框,而不是使用默认的创建一个新的数据框。 我们还将使用DataFrame.drop函数来删除多层索引级别。

原始数据框如下:

import pandas as pd data = {('class 1', 'Alice'): [84, 72, 'M'], ('class 1', 'Bob'): [78, 92, 'M'], ('class 2', 'Charlie'): [65, 35, 'F'], ('class 2', 'David'): [85, 78, 'M']} df = pd.DataFrame(data, index=['marks', 'age', 'Gender']).T print(df)

原始数据帧如下所示:

marks age Gender class 1 Alice 84 72 M Bob 78 92 M class 2 Charlie 65 35 F David 85 78 M

现在,我们将使用 DataFrame.drop 函数来删除索引处级别为“Gender”的所有行,并将更改原始数据框的值:

df.drop(index='Gender', level=1, inplace=True) print(df)

输出结果如下所示:

marks age class 1 Alice 84 72 Bob 78 92 class 2 Charlie 65 35 David 85 78

在上面的代码中,我们使用了DataFrame.drop函数来删除级别为“level=1”的索引,即索引“Gender”。我们使用inplace参数来指定是否需要在原始数据帧中进行删除操作。

以上就是利用 DataFrame.drop 函数来删除行和列的步骤,该函数还有很多其他的参数用法,总结起来就是可以利用该函数,灵活操作数据帧。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:详解pandas.DataFrame.drop()(删除行或列)函数使用方法 - Python技术站



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3